<html>
<head><meta charset="utf-8"><title>CrateMetadata source_map_import_info · t-compiler/wg-parallel-rustc · Zulip Chat Archive</title></head>
<h2>Stream: <a href="https://rust-lang.github.io/zulip_archive/stream/187679-t-compiler/wg-parallel-rustc/index.html">t-compiler/wg-parallel-rustc</a></h2>
<h3>Topic: <a href="https://rust-lang.github.io/zulip_archive/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata.20source_map_import_info.html">CrateMetadata source_map_import_info</a></h3>

<hr>

<base href="https://rust-lang.zulipchat.com">

<head><link href="https://rust-lang.github.io/zulip_archive/style.css" rel="stylesheet"></head>

<a name="179439222"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata%20source_map_import_info/near/179439222" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata.20source_map_import_info.html#179439222">(Oct 30 2019 at 14:48)</a>:</h4>
<p>Hey everyone, I was doing a document about <code>CrateMetadata</code></p>



<a name="179439230"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata%20source_map_import_info/near/179439230" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata.20source_map_import_info.html#179439230">(Oct 30 2019 at 14:48)</a>:</h4>
<p><a href="https://hackmd.io/42cKqJroTGKQlNdcID_GlA" target="_blank" title="https://hackmd.io/42cKqJroTGKQlNdcID_GlA">https://hackmd.io/42cKqJroTGKQlNdcID_GlA</a></p>



<a name="179439242"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata%20source_map_import_info/near/179439242" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata.20source_map_import_info.html#179439242">(Oct 30 2019 at 14:49)</a>:</h4>
<p>in particular was going over <code>source_map_import_info</code> field</p>



<a name="179439264"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata%20source_map_import_info/near/179439264" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata.20source_map_import_info.html#179439264">(Oct 30 2019 at 14:49)</a>:</h4>
<p>s/attribute/field I believe</p>



<a name="179439265"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata%20source_map_import_info/near/179439265" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata.20source_map_import_info.html#179439265">(Oct 30 2019 at 14:49)</a>:</h4>
<p>commented to <span class="user-mention" data-user-id="116122">@simulacrum</span> about it, and they've made some comments on the doc</p>



<a name="179439304"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata%20source_map_import_info/near/179439304" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata.20source_map_import_info.html#179439304">(Oct 30 2019 at 14:49)</a>:</h4>
<p>we were talking about <code>Once</code></p>



<a name="179439330"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata%20source_map_import_info/near/179439330" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata.20source_map_import_info.html#179439330">(Oct 30 2019 at 14:50)</a>:</h4>
<p>so ... in this case several threads could arrive to the initialization point together</p>



<a name="179439382"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata%20source_map_import_info/near/179439382" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata.20source_map_import_info.html#179439382">(Oct 30 2019 at 14:50)</a>:</h4>
<p><a href="https://doc.rust-lang.org/nightly/nightly-rustc/rustc_data_structures/sync/struct.Once.html" target="_blank" title="https://doc.rust-lang.org/nightly/nightly-rustc/rustc_data_structures/sync/struct.Once.html">https://doc.rust-lang.org/nightly/nightly-rustc/rustc_data_structures/sync/struct.Once.html</a></p>



<a name="179439387"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata%20source_map_import_info/near/179439387" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata.20source_map_import_info.html#179439387">(Oct 30 2019 at 14:50)</a>:</h4>
<p>and we want to initialize once and then use it as read only</p>



<a name="179439414"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata%20source_map_import_info/near/179439414" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata.20source_map_import_info.html#179439414">(Oct 30 2019 at 14:50)</a>:</h4>
<p>I was wondering how does Once works</p>



<a name="179439415"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata%20source_map_import_info/near/179439415" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata.20source_map_import_info.html#179439415">(Oct 30 2019 at 14:50)</a>:</h4>
<p>so it looks like once has some methods that would let us do that</p>



<a name="179439423"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata%20source_map_import_info/near/179439423" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata.20source_map_import_info.html#179439423">(Oct 30 2019 at 14:50)</a>:</h4>
<p>and if it fits that logic</p>



<a name="179439451"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata%20source_map_import_info/near/179439451" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata.20source_map_import_info.html#179439451">(Oct 30 2019 at 14:50)</a>:</h4>
<p>it seemed to me that's exactly what I was looking for :)</p>



<a name="179439486"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata%20source_map_import_info/near/179439486" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata.20source_map_import_info.html#179439486">(Oct 30 2019 at 14:50)</a>:</h4>
<p>specifically looks like init_locking (<a href="https://doc.rust-lang.org/nightly/nightly-rustc/rustc_data_structures/sync/struct.Once.html#method.init_locking" target="_blank" title="https://doc.rust-lang.org/nightly/nightly-rustc/rustc_data_structures/sync/struct.Once.html#method.init_locking">https://doc.rust-lang.org/nightly/nightly-rustc/rustc_data_structures/sync/struct.Once.html#method.init_locking</a>) is the right thing here</p>



<a name="179439500"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata%20source_map_import_info/near/179439500" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata.20source_map_import_info.html#179439500">(Oct 30 2019 at 14:51)</a>:</h4>
<p>Once just wraps a Lock in nice APIs</p>



<a name="179439505"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata%20source_map_import_info/near/179439505" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata.20source_map_import_info.html#179439505">(Oct 30 2019 at 14:51)</a>:</h4>
<p><span aria-label="+1" class="emoji emoji-1f44d" role="img" title="+1">:+1:</span></p>



<a name="179439524"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata%20source_map_import_info/near/179439524" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata.20source_map_import_info.html#179439524">(Oct 30 2019 at 14:51)</a>:</h4>
<p>going to take a look at it and try to port</p>



<a name="179439582"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata%20source_map_import_info/near/179439582" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata.20source_map_import_info.html#179439582">(Oct 30 2019 at 14:51)</a>:</h4>
<p>then you mentioned that we may get rid of the sync construction altogether ...</p>



<a name="179439600"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata%20source_map_import_info/near/179439600" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata.20source_map_import_info.html#179439600">(Oct 30 2019 at 14:51)</a>:</h4>
<p>any other thought about it?</p>



<a name="179439607"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata%20source_map_import_info/near/179439607" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata.20source_map_import_info.html#179439607">(Oct 30 2019 at 14:51)</a>:</h4>
<p>I think the primitives in once_cell are actually nicer in this sense</p>



<a name="179439614"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata%20source_map_import_info/near/179439614" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata.20source_map_import_info.html#179439614">(Oct 30 2019 at 14:51)</a>:</h4>
<p>I think moving to Once first might help</p>



<a name="179439621"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata%20source_map_import_info/near/179439621" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata.20source_map_import_info.html#179439621">(Oct 30 2019 at 14:52)</a>:</h4>
<p>it'll simplify the code a bit for sure</p>



<a name="179439674"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata%20source_map_import_info/near/179439674" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata.20source_map_import_info.html#179439674">(Oct 30 2019 at 14:52)</a>:</h4>
<p>ok, let me move to <code>Once</code> and then we can discuss the rest</p>



<a name="179439675"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata%20source_map_import_info/near/179439675" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata.20source_map_import_info.html#179439675">(Oct 30 2019 at 14:52)</a>:</h4>
<p>I was going to see if the method is always called in a <code>&amp;mut</code> context</p>



<a name="179439680"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata%20source_map_import_info/near/179439680" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata.20source_map_import_info.html#179439680">(Oct 30 2019 at 14:52)</a>:</h4>
<p>but I think that's not true?</p>



<a name="179439725"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata%20source_map_import_info/near/179439725" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata.20source_map_import_info.html#179439725">(Oct 30 2019 at 14:53)</a>:</h4>
<p>is not</p>



<a name="179439726"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata%20source_map_import_info/near/179439726" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata.20source_map_import_info.html#179439726">(Oct 30 2019 at 14:53)</a>:</h4>
<p><a href="https://github.com/rust-lang/rust/blob/master/src/librustc_metadata/decoder.rs#L1290-L1374" target="_blank" title="https://github.com/rust-lang/rust/blob/master/src/librustc_metadata/decoder.rs#L1290-L1374">https://github.com/rust-lang/rust/blob/master/src/librustc_metadata/decoder.rs#L1290-L1374</a></p>



<a name="179439771"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata%20source_map_import_info/near/179439771" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata.20source_map_import_info.html#179439771">(Oct 30 2019 at 14:53)</a>:</h4>
<p>I've realized that my links in the doc point to a specific commit in my local repo, so links don't work on the doc</p>



<a name="179439791"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata%20source_map_import_info/near/179439791" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata.20source_map_import_info.html#179439791">(Oct 30 2019 at 14:53)</a>:</h4>
<p>change the sha to master if you need to check something :)</p>



<a name="179439792"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata%20source_map_import_info/near/179439792" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata.20source_map_import_info.html#179439792">(Oct 30 2019 at 14:53)</a>:</h4>
<p>sorry about that</p>



<a name="179440217"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata%20source_map_import_info/near/179440217" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata.20source_map_import_info.html#179440217">(Oct 30 2019 at 14:57)</a>:</h4>
<p>but yeah let's land Once first and I think that's already a good win</p>



<a name="179461323"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata%20source_map_import_info/near/179461323" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Vadim Petrochenkov <a href="https://rust-lang.github.io/zulip_archive/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata.20source_map_import_info.html#179461323">(Oct 30 2019 at 18:21)</a>:</h4>
<p>FWIW, I did some review of locks in <code>CrateMetadata</code> previously - <a href="https://github.com/rust-lang/rust/pull/65625#issuecomment-544256417" target="_blank" title="https://github.com/rust-lang/rust/pull/65625#issuecomment-544256417">https://github.com/rust-lang/rust/pull/65625#issuecomment-544256417</a>.</p>



<a name="179463283"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata%20source_map_import_info/near/179463283" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata.20source_map_import_info.html#179463283">(Oct 30 2019 at 18:39)</a>:</h4>
<p>cool gonna go over all these later</p>



<a name="179463288"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata%20source_map_import_info/near/179463288" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata.20source_map_import_info.html#179463288">(Oct 30 2019 at 18:39)</a>:</h4>
<p>thanks</p>



<a name="179468575"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata%20source_map_import_info/near/179468575" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata.20source_map_import_info.html#179468575">(Oct 30 2019 at 19:32)</a>:</h4>
<p><span class="user-mention" data-user-id="116122">@simulacrum</span> could jump into this <a href="https://github.com/rust-lang/rust/pull/65979" target="_blank" title="https://github.com/rust-lang/rust/pull/65979">https://github.com/rust-lang/rust/pull/65979</a></p>



<a name="179468611"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata%20source_map_import_info/near/179468611" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata.20source_map_import_info.html#179468611">(Oct 30 2019 at 19:33)</a>:</h4>
<p>left as WIP because I want to see CI running just in case</p>



<a name="179468647"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata%20source_map_import_info/near/179468647" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata.20source_map_import_info.html#179468647">(Oct 30 2019 at 19:33)</a>:</h4>
<p>have ran the basic tests but just in case :)</p>



<a name="179468698"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata%20source_map_import_info/near/179468698" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata.20source_map_import_info.html#179468698">(Oct 30 2019 at 19:34)</a>:</h4>
<p>so now, about removing the Lock, ideas?</p>



<a name="179468791"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata%20source_map_import_info/near/179468791" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata.20source_map_import_info.html#179468791">(Oct 30 2019 at 19:35)</a>:</h4>
<p>let's leave it for a future PR</p>



<a name="179468854"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata%20source_map_import_info/near/179468854" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata.20source_map_import_info.html#179468854">(Oct 30 2019 at 19:36)</a>:</h4>
<p>yeah that's ok, but I meant, do you have ideas so I can try out</p>



<a name="179468883"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata%20source_map_import_info/near/179468883" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata.20source_map_import_info.html#179468883">(Oct 30 2019 at 19:36)</a>:</h4>
<p>I guess we could remove the field from there and use something like CrateMetadataCache structure that holds that info and maybe other caches</p>



<a name="179468917"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata%20source_map_import_info/near/179468917" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata.20source_map_import_info.html#179468917">(Oct 30 2019 at 19:37)</a>:</h4>
<p>the problem is that I don't know exactly the lifecycle of the data, where exactly could this be created one time and then reused</p>



<a name="179469116"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata%20source_map_import_info/near/179469116" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata.20source_map_import_info.html#179469116">(Oct 30 2019 at 19:39)</a>:</h4>
<p>yeah I don't have any without some deeper investigating, sorry -- I've not had time to do so :/</p>



<a name="179469517"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata%20source_map_import_info/near/179469517" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata.20source_map_import_info.html#179469517">(Oct 30 2019 at 19:45)</a>:</h4>
<p>no worries</p>



<a name="179477598"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata%20source_map_import_info/near/179477598" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata.20source_map_import_info.html#179477598">(Oct 30 2019 at 21:09)</a>:</h4>
<p><span class="user-mention" data-user-id="116122">@simulacrum</span> just back to this</p>



<a name="179477603"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata%20source_map_import_info/near/179477603" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata.20source_map_import_info.html#179477603">(Oct 30 2019 at 21:09)</a>:</h4>
<p>and force pushed</p>



<a name="179477709"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata%20source_map_import_info/near/179477709" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata.20source_map_import_info.html#179477709">(Oct 30 2019 at 21:10)</a>:</h4>
<p>check it out just in case there's a better way to do <code>init_locking</code></p>



<a name="179477809"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata%20source_map_import_info/near/179477809" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata.20source_map_import_info.html#179477809">(Oct 30 2019 at 21:12)</a>:</h4>
<p>hmm I think I can just call borrow</p>



<a name="179477842"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata%20source_map_import_info/near/179477842" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata.20source_map_import_info.html#179477842">(Oct 30 2019 at 21:12)</a>:</h4>
<p>checking</p>



<a name="179477897"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata%20source_map_import_info/near/179477897" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata.20source_map_import_info.html#179477897">(Oct 30 2019 at 21:12)</a>:</h4>
<p>yeah it's exactly the same</p>



<a name="179477909"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata%20source_map_import_info/near/179477909" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata.20source_map_import_info.html#179477909">(Oct 30 2019 at 21:12)</a>:</h4>
<p>switching to borrow so I don't need to unwrap :)</p>



<a name="179477991"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata%20source_map_import_info/near/179477991" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata.20source_map_import_info.html#179477991">(Oct 30 2019 at 21:13)</a>:</h4>
<p><span class="user-mention" data-user-id="116122">@simulacrum</span> done</p>



<a name="179545739"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata%20source_map_import_info/near/179545739" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata.20source_map_import_info.html#179545739">(Oct 31 2019 at 15:57)</a>:</h4>
<p><span class="user-mention" data-user-id="116122">@simulacrum</span> the stuff we were talking about yesterday <a href="https://github.com/rust-lang/rust/pull/66001" target="_blank" title="https://github.com/rust-lang/rust/pull/66001">https://github.com/rust-lang/rust/pull/66001</a></p>



<a name="179545879"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata%20source_map_import_info/near/179545879" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata.20source_map_import_info.html#179545879">(Oct 31 2019 at 15:59)</a>:</h4>
<p>I've put it in my queue, not sure if I'll have time today :/</p>



<a name="179545889"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata%20source_map_import_info/near/179545889" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata.20source_map_import_info.html#179545889">(Oct 31 2019 at 15:59)</a>:</h4>
<p>I try to make commits in a way that's easier to review and not mix things, in this particular the part of moving a method to a separate fn adds a lot of noise and it's in a separate commit :)</p>



<a name="179545902"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata%20source_map_import_info/near/179545902" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata.20source_map_import_info.html#179545902">(Oct 31 2019 at 15:59)</a>:</h4>
<blockquote>
<p>I've put it in my queue, not sure if I'll have time today :/</p>
</blockquote>
<p>no worries</p>



<a name="179546009"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata%20source_map_import_info/near/179546009" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata.20source_map_import_info.html#179546009">(Oct 31 2019 at 16:00)</a>:</h4>
<p>the main thing is that this makes <code>source_map_import_info</code> and <code>dep_node_index</code> private</p>



<a name="179655541"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata%20source_map_import_info/near/179655541" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata.20source_map_import_info.html#179655541">(Nov 01 2019 at 19:11)</a>:</h4>
<p><span class="user-mention" data-user-id="116009">@nikomatsakis</span> you wanted to discuss about some refactors related to all the <code>CrateMetadata</code> situation</p>



<a name="179655617"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata%20source_map_import_info/near/179655617" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata.20source_map_import_info.html#179655617">(Nov 01 2019 at 19:12)</a>:</h4>
<p>I was telling <span class="user-mention" data-user-id="116009">@nikomatsakis</span> that <span class="user-mention" data-user-id="123856">@Vadim Petrochenkov</span> pointed to some interesting thoughts related to <code>CrateMetadata</code> being behind <code>Lrc</code> and that being why some <code>CrateMetadata</code> fields are behind sync types</p>



<a name="179655669"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata%20source_map_import_info/near/179655669" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata.20source_map_import_info.html#179655669">(Nov 01 2019 at 19:13)</a>:</h4>
<p>and that <code>Lrc</code> can't be removed because <code>CrateMetadata</code> needs to be behind it in order to allow <code>CStore</code> (what contains <code>CrateMetadata</code>) be clonable</p>



<a name="179655709"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata%20source_map_import_info/near/179655709" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata.20source_map_import_info.html#179655709">(Nov 01 2019 at 19:13)</a>:</h4>
<p>some of the things I've read on github comments are</p>



<a name="179655725"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata%20source_map_import_info/near/179655725" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata.20source_map_import_info.html#179655725">(Nov 01 2019 at 19:13)</a>:</h4>
<blockquote>
<p>but it actually never happens in rustc, only in rustdoc and perhaps other tools using rustc_interface.</p>
</blockquote>



<a name="179655784"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata%20source_map_import_info/near/179655784" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata.20source_map_import_info.html#179655784">(Nov 01 2019 at 19:14)</a>:</h4>
<p>talking about <code>clone</code>ing <code>CrateMetadata</code> or <code>CStore</code> I guess</p>



<a name="179655822"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata%20source_map_import_info/near/179655822" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata.20source_map_import_info.html#179655822">(Nov 01 2019 at 19:14)</a>:</h4>
<blockquote>
<p>This clone only happens with rustdoc since it needs the resolver available at a later stage. It would be nicer if we could extract the information rustdoc needs instead.</p>
</blockquote>



<a name="179662386"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata%20source_map_import_info/near/179662386" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata.20source_map_import_info.html#179662386">(Nov 01 2019 at 20:29)</a>:</h4>
<p><span class="user-mention" data-user-id="116122">@simulacrum</span> I've opened another small PR <a href="https://github.com/rust-lang/rust/pull/66024" target="_blank" title="https://github.com/rust-lang/rust/pull/66024">https://github.com/rust-lang/rust/pull/66024</a></p>



<a name="179663292"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata%20source_map_import_info/near/179663292" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata.20source_map_import_info.html#179663292">(Nov 01 2019 at 20:40)</a>:</h4>
<p>I guess the question would be to characterize what information is being used from rustdoc</p>



<a name="179663992"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata%20source_map_import_info/near/179663992" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata.20source_map_import_info.html#179663992">(Nov 01 2019 at 20:49)</a>:</h4>
<p>yeah, I think so, <span class="user-mention" data-user-id="123856">@Vadim Petrochenkov</span> has also mentioned that perhaps other tools using <code>rustc_interface</code> could be doing the same, which I think makes sense</p>



<a name="179664086"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata%20source_map_import_info/near/179664086" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata.20source_map_import_info.html#179664086">(Nov 01 2019 at 20:50)</a>:</h4>
<p>they mentioned that <code>rustc_interface</code> is hard to reason about, I have no clue about that to be honest, haven't looked at the code</p>



<a name="179664308"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata%20source_map_import_info/near/179664308" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata.20source_map_import_info.html#179664308">(Nov 01 2019 at 20:52)</a>:</h4>
<p>rustc_interface is trying to put queries where we... are not ready for queries</p>



<a name="179664351"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata%20source_map_import_info/near/179664351" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata.20source_map_import_info.html#179664351">(Nov 01 2019 at 20:53)</a>:</h4>
<p><span class="user-mention" data-user-id="120989">@nnethercote</span> had a chart drawn up that looked like what I imagine a modern car engine to</p>



<a name="179666697"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata%20source_map_import_info/near/179666697" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata.20source_map_import_info.html#179666697">(Nov 01 2019 at 21:18)</a>:</h4>
<p><span class="user-mention" data-user-id="116122">@simulacrum</span> btw opened another pr <a href="https://github.com/rust-lang/rust/pull/66028" target="_blank" title="https://github.com/rust-lang/rust/pull/66028">https://github.com/rust-lang/rust/pull/66028</a></p>



<a name="179666746"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata%20source_map_import_info/near/179666746" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata.20source_map_import_info.html#179666746">(Nov 01 2019 at 21:19)</a>:</h4>
<p>Yes, I saw -- am hoping to get around to the review of the first one tonight :)</p>



<a name="179666800"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata%20source_map_import_info/near/179666800" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata.20source_map_import_info.html#179666800">(Nov 01 2019 at 21:20)</a>:</h4>
<p><span class="user-mention" data-user-id="116122">@simulacrum</span> what we have discussed about making dependencies private, that we ended with copies now is better in that last one</p>



<a name="179666813"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata%20source_map_import_info/near/179666813" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata.20source_map_import_info.html#179666813">(Nov 01 2019 at 21:20)</a>:</h4>
<p>basically there's a method that IMO belongs to <code>CrateMetadata</code> but was sitting on <code>CStore</code></p>



<a name="179666829"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata%20source_map_import_info/near/179666829" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata.20source_map_import_info.html#179666829">(Nov 01 2019 at 21:21)</a>:</h4>
<p>and with that part of the usage of dependencies that made it hard to make it private move away to <code>CrateMetadata</code> :)</p>



<a name="179670975"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata%20source_map_import_info/near/179670975" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> njn <a href="https://rust-lang.github.io/zulip_archive/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata.20source_map_import_info.html#179670975">(Nov 01 2019 at 22:25)</a>:</h4>
<p><span class="user-mention" data-user-id="116122">@simulacrum</span> , <span class="user-mention" data-user-id="116266">@Santiago Pastorino</span> : <a href="https://github.com/rust-lang/rust/pull/64016#issuecomment-526755156" target="_blank" title="https://github.com/rust-lang/rust/pull/64016#issuecomment-526755156">https://github.com/rust-lang/rust/pull/64016#issuecomment-526755156</a> has the diagrams</p>



<a name="179670996"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata%20source_map_import_info/near/179670996" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> njn <a href="https://rust-lang.github.io/zulip_archive/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata.20source_map_import_info.html#179670996">(Nov 01 2019 at 22:25)</a>:</h4>
<p>we ended up with something partway between the "old" and "new" pics in that PR</p>



<a name="179688484"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata%20source_map_import_info/near/179688484" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/187679-t-compiler/wg-parallel-rustc/topic/CrateMetadata.20source_map_import_info.html#179688484">(Nov 02 2019 at 06:12)</a>:</h4>
<p><span class="user-mention" data-user-id="120989">@nnethercote</span> are you able to add some of these stuff to rustc-guide? :)</p>



<hr><p>Last updated: Aug 07 2021 at 22:04 UTC</p>
</html>